]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
dash/dashIcon: Popup menu above the icon
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>
Thu, 7 Jan 2021 13:05:18 +0000 (10:05 -0300)
committerMarge Bot <marge-bot@gnome.org>
Tue, 19 Jan 2021 13:47:06 +0000 (13:47 +0000)
Now that the Dash is horizontal, the popup menu of the Dash icons must
show up, instead of left/right.

Make AppIcon.popupMenu() receive an optional parameter with the side
to show the menu, using St.Side.LEFT as default. Override this method
in DashIcon to always pass St.Side.TOP.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1559>

js/ui/appDisplay.js
js/ui/dash.js

index 4cfc13a7d14a9713989a83ef24a33ae35b9cde34..a2c6adaa04240532d8ef355fb6e9614829ea177c 100644 (file)
@@ -2756,7 +2756,7 @@ var AppIcon = GObject.registerClass({
         return this.app.get_id();
     }
 
-    popupMenu() {
+    popupMenu(side = St.Side.LEFT) {
         this._removeMenuTimeout();
         this.fake_release();
 
@@ -2764,7 +2764,7 @@ var AppIcon = GObject.registerClass({
             this._draggable.fakeRelease();
 
         if (!this._menu) {
-            this._menu = new AppIconMenu(this);
+            this._menu = new AppIconMenu(this, side);
             this._menu.connect('activate-window', (menu, window) => {
                 this.activateWindow(window);
             });
@@ -2920,10 +2920,13 @@ var AppIcon = GObject.registerClass({
 });
 
 var AppIconMenu = class AppIconMenu extends PopupMenu.PopupMenu {
-    constructor(source) {
-        let side = St.Side.LEFT;
-        if (Clutter.get_default_text_direction() == Clutter.TextDirection.RTL)
-            side = St.Side.RIGHT;
+    constructor(source, side) {
+        if (Clutter.get_default_text_direction() === Clutter.TextDirection.RTL) {
+            if (side === St.Side.LEFT)
+                side = St.Side.RIGHT;
+            else if (side === St.Side.RIGHT)
+                side = St.Side.LEFT;
+        }
 
         super(source, 0.5, side);
 
index 3d6e756232f1097f3e67f51cfa522c1b9d6bc850..9c8639b2801cebf248723c6d99f66251607f3087 100644 (file)
@@ -31,6 +31,10 @@ class DashIcon extends AppDisplay.AppIcon {
         });
     }
 
+    popupMenu() {
+        super.popupMenu(St.Side.BOTTOM);
+    }
+
     // Disable scale-n-fade methods used during DND by parent
     scaleAndFade() {
     }